package com.smforj.ssm.sys.dao;

import java.util.List;

import com.smforj.ssm.constant.MforjDao;
import com.smforj.ssm.sys.model.po.PreferencePO;
import com.smforj.ssm.sys.model.query.PreferenceQuery;
import com.smforj.ssm.sys.model.result.PreferenceResponse;

/**
 * Created by shibiao on 16/10/5.
 */ 
@MforjDao
public interface IPreferenceDAO {

    /**
     * 插入偏好信息
     * @param entity
     * @return
     */
    int insertPreference(PreferencePO entity);

    /**
     * 批量插入批量信息
     * @param preferencePOList
     * @return
     */
    int batchInsertPreferenceList(List<PreferencePO> preferencePOList);

    /**
     * 更新偏好信息
     * @param entity
     * @return
     */
    int updatePreference(PreferencePO entity);

    /**
     * 根据rfid查询偏好信息列表
     * @param rfid
     * @return
     */
    List<PreferencePO> getPreferenceByRFID(String rfid);

    /**
     * 根据条件查询喜好列列表，top m的DAO层实现
     * @param query
     * @return
     */
    List<PreferenceResponse> getPreferenceResponseByParam(PreferenceQuery query);
}
